﻿/// <reference path="jquery-vsdoc.js" />
/// <reference path="jquery-ui-1.8.custom.min.js" />

// 设置widget的全局默认属性


$.datepicker.setDefaults(
{
    disable: 'true',
    dateFormat: 'yy-mm-dd',
    dateNames: ['星期天', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'],
    dayNamesMin: ['日', '一', '二', '三', '四', '五', '六'],
    dayNamesShort: ['周日', '周一', '周二', '周三', '周四', '周五', '周六'],
    monthNames: ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
    nextText: '下个月',
    prevText: '上个月',
    showOtherMonths: 'true',
    selectOtherMonths: 'true',
    showAnim: 'fold',

    onSelect: function () {
    }
}
);

$.extend({
    'displayInfo': function (options) {
        function getDefaultOptions() {
            return {
              'state': Error,
              'info': null,
              'container': $('body #layout_root')
            }
      }

        // 默认参数
        var defaultOptions = getDefaultOptions();
        if (!options) options = {};

        // 载入参数
        for (var item in defaultOptions) {
            if (!options[item]) {
                options[item] = defaultOptions[item];
            }
        }

        var state = options.state;
        var info = options.info;

        // 不同时显示两个信息框
        if ($('#display-info')) {
            $('#display-info').remove();
        }

        var icon_name_table = {
            'Error': 'alert',
            'Success': 'info'
        };
        var state_name_table = {
            'Error': 'error',
            'Success': 'highlight'
        };

        var title = "消息:"
        if (state == "Error") {
            title = "警告:"
        }
        var content = info;

        var p_content = $('<p/>')
        .append($('<span/>').addClass('ui-icon ui-icon-' + icon_name_table[state]).css({ 'float': 'left', 'margin-right': '.3em' }))
        .append($('<strong/>').html(title))
        .append($('<span/>').html(content));

        var element = $('<div id="display-info"/>').addClass("ui-widget").css({ 'margin': '5px' })
        .append(
            $('<div/>')
            .addClass("ui-corner-all ui-state-" + state_name_table[state])
            .css({ 'padding': '0 .7em' })
            .append(p_content)
            );
        element.prependTo(options.container);

        setTimeout(function () {
            element.fadeOut('slow');
        },
        5000
        );
    }
});




var ajaxBusyDisabledControls = [];

$.extend({
    ajaxBusy: function (action, options) {

        function getDefaultOptions() {
            return {
                'sender': null,
                'container': $('body #layout_root'),
                'isOverlay': false
            };
        }

        // 默认参数
        var defaultOptions = getDefaultOptions();
        if (!options) options = {};

        // 载入参数
        for (var item in defaultOptions) {
            if (!options[item]) {
                options[item] = defaultOptions[item];
            }
        }

        switch (action) {
            case 'begin':
                // disable sender buttons
                if (options.sender) {
                    ajaxBusyDisabledControls[ajaxBusyDisabledControls.length] = options.sender;
                    $(options.sender).attr('disabled', true);
                    $(options.sender).button("option", "disabled", true);
                }

                if (options.isOverlay) {
                    $('<div id="ajax-busy-overlay" class="ui-widget-overlay"/>')
                    .css({
                        'z-index': 999
                    })
                    .prependTo(options.container);
                }

                $('<div id="ajax-busy-icon" class="ajax-busy"/>').prependTo(options.container);
                break;
            case 'end':
                $('#ajax-busy-icon').remove();
                $('#ajax-busy-overlay').remove();

                // enable sender buttons
                $(ajaxBusyDisabledControls).each(function (index, item) {
                    $(item).attr('disabled', false);
                    $(item).button("option", "disabled", false);
                });

                ajaxBusyDisabledControls = [];
                break;
        };
    }

});

// 加载后执行

$(function () {
    $("button, input:submit, input:button").button();
    $('input:text').textbox();
    $('textarea').textbox()
    //$('input:checkbox, input:radio').checkbox();
});


 

